base-files: always generate default DUID main master
authorDavid Härdeman <[email protected]>
Tue, 9 Dec 2025 22:49:48 +0000 (23:49 +0100)
committerPetr Štetiar <[email protected]>
Thu, 11 Dec 2025 06:39:34 +0000 (06:39 +0000)
The previous logic was copied from 12_network-generate-ula, but fails to
account for upgrades where the "auto" value isn't set (it is set by
base-files/files/bin/config_generate). Fix this to always set the
default duid if it isn't set.

Also, rename the file to better reflect what it does.

Closes: #21029
Fixes: a660a076db5a ("base-files: generate a global DHCP DUID")
Link: https://github.com/openwrt/openwrt/pull/21118
Signed-off-by: David Härdeman <[email protected]>
Signed-off-by: Petr Štetiar <[email protected]> [fixes,closes tag]
package/base-files/files/etc/uci-defaults/14_network-generate-clientid [deleted file]
package/base-files/files/etc/uci-defaults/14_network-generate-duid [new file with mode: 0644]

diff --git a/package/base-files/files/etc/uci-defaults/14_network-generate-clientid b/package/base-files/files/etc/uci-defaults/14_network-generate-clientid
deleted file mode 100644 (file)
index 11806dd..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-[ "$(uci -q get network.globals.dhcp_default_duid)" != "auto" ] && exit 0
-
-uci -q batch <<-EOF >/dev/null
-       # DUID-UUID - RFC6355
-       set network.globals.dhcp_default_duid="$(printf '%s%s' '0004' $(cat /proc/sys/kernel/random/uuid | sed -e 's/-//g'))"
-       commit network
-EOF
-
-exit 0
diff --git a/package/base-files/files/etc/uci-defaults/14_network-generate-duid b/package/base-files/files/etc/uci-defaults/14_network-generate-duid
new file mode 100644 (file)
index 0000000..c793dba
--- /dev/null
@@ -0,0 +1,9 @@
+[ "$(uci -q get network.globals.dhcp_default_duid || echo "auto")" != "auto" ] && exit 0
+
+uci -q batch <<-EOF >/dev/null
+       # DUID-UUID - RFC6355
+       set network.globals.dhcp_default_duid="$(printf '%s%s' '0004' $(cat /proc/sys/kernel/random/uuid | sed -e 's/-//g'))"
+       commit network
+EOF
+
+exit 0